package javaes.dados.uf;

import java.util.List;
import javaes.dados.generico.InsertUpdateDeleteHibernate;
import javaes.dados.generico.ObterRegistros;
import javaes.modelo.Pais;
import javaes.modelo.UF;

public class UFDAOHibernate implements UFDAO
{
	private ObterRegistros<UF> obt;
	
	public UFDAOHibernate()
	{
	  this.obt = new  ObterRegistros(new UF());
	}

	@Override
	public void salvar(UF uf) throws Exception 
	{
		try
        {
           InsertUpdateDeleteHibernate.salva(uf);
        }
        catch(Exception erro)
        {
           throw new Exception(erro.getMessage());
        }
		
	}

	@Override
	public void excluir(UF uf) throws Exception 
	{
		 try
	      {
	          InsertUpdateDeleteHibernate.exclui(uf);
	      }
	      catch(Exception erro)
	      {
	          throw new Exception(erro.getMessage());
	      }
		
	}

	@Override
	public UF buscaPorID(long id) throws Exception 
	{
	  return 	(UF)this.obt.buscar(id, "idUF");
	}

	@Override
	public List<UF> listar() throws Exception 
	{
	    return this.obt.listar();
	}

    @Override
    public List<UF> listar(Pais pais) throws Exception 
    {
        return this.obt.listar("pais",pais);
    }
}
